#include<bits/stdc++.h>
using namespace std;
const int N=1e5+100;
int n,m,c,k,t;
int a[N];
int x[4];
long long num;
bool b[N][N];
int main(){
    freopen("arena.in","r",stdin);
    freopen("arena.out","w",stdout);
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++)
        scanf("%d",&a[i]);
    for(int i=1;i<=m;i++)
        scanf("%d",&c);
    for(k=1;k<=n/2;k*=2)
        if(k>n)
            break;
    k/=2;
    for(int i=1;i<=k;i++)
        for(int j=1;j<=k-i;j++)
            cin>>b[i][j];
    scanf("%d",&t);
while(t--){
    scanf("%d%d%d%d",&x[0],&x[1],&x[2],&x[3]);
    for(int i=1;i<=n;i++)
        a[i]=a[i]^x[i%4];
    num=a[1];
    for(int i=2;i<=m;i++){
        num=num^(i*a[i]);
    }
    printf("%lld\n",num);    
}
    return 0;
} 